package com.ruoyi.common.utils.shell.jsch;

import com.jcraft.jsch.JSch;

/**
 * 只仅一个Jsch实例
 *
 * @author Hack2003
 * @date 2024/3/26 16:23
 **/
public class JschSingleton {
    private static volatile JSch jschInstance;

    /**
     * 使用双重检查锁定实现线程安全的单例
     * @return
     */
    public static JSch getJSchInstance() {
        if (jschInstance == null) {
            synchronized (JschSingleton.class) {
                if (jschInstance == null) {
                    jschInstance = new JSch();
                }
            }
        }
        return jschInstance;
    }
}
